3k words
[TOC] 80x86微控制器 80x86微处理器系列是由英特尔公司开发的一系列相关的微处理器,其中8086是该系列的首款产品,发布于1978年。 80x86 通常指的是以8086为基础的整个微处理器家族,这包括了从8086延伸出的各种处理器,如80286、80386、80486等。这些处理器在基本的指令集架构上是向后兼容的。这一系列处理器通常被称为x86架构。 在这门课中我们主要关心的是8086型号,它的字长是16位,数据总线、外部总线宽度也是16位,地址总线宽度20位。 中央处理机 中央处理机,也就是常说的计算机的核心部件——中央处理单元,CPU(Central Processing Unit)。 它通常由控制单元、算术逻辑单元(ALU)、寄存器和高速缓存组成。 80x86寄存器组 通用寄存器 如上图,AX,BX,CX,DX可以称为数据寄存器,用来暂时存放计算过程中所用到的操作数、结果和其他信息。他们都可以可以既以字(16位)访问,也可以以字节(8位)访问。也就是说可以单独访问高位字节或低位字节。 这4个寄存器都是通用寄存器,但又可以用于各自的专用目的。 AX - ...
264 words
[TOC] 数制 数制包括:二进制(Binary)、八进制(Octal)、十进制(Decimal)、十六进制(Hexadecimal)。 十进制转二进制(降幂法) 可以不断取对2的余数,然后向下取整地除以2。 123456vector<bool> B; // 初始空的一个数组while (D>0){ B.push_back(D%2); // 取余数 D/=2; // 降幂}reverse(B.begin(),B.end()); // 反转一下 或者找最大的位权,然后向下推,这样无需最后的翻转: 十进制转十六进制 类似的除法。
1.4k words
[TOC] 物理层基本概念 物理层为数据链路层屏蔽了各种传输媒体的差异。 数据通信基础 信道 信道和电路并不等同。信道是用来向一个方向传送信息的媒体。一条通信电路往往包含一条发送信道和一条接收信道。 信息交互方式 ① 单向通信(单工)。例如,无线电广播。 ② 双向交替通信(半双工)。可以双向,但不能同时双向。例如对讲机。 ③ 双向同时通信(全双工)。可以同时发送接收。需要两个信道。 来自信源的信号被称为基带信号。例如计算机输出的代表各种文字或图像文件的数据信号。分为数字信号和模拟基带信号,前者例如CPU与总线之间传递的比特流,后者例如麦克风的音频信号。 编码与调制 不改变信号数字/模拟性质的前提下,对数字基带信号的波形进行变换,称为编码,编码后仍然是数字信号。模拟信号也可以编码,编码后变成数字信号,不过要采样。 把数字信号的频率范围搬移到较高频段,并转换为 模拟信号,称为调制,调制后变成模拟信号。 常用编码方式 码元是在使用时间域的波形表示数字信号时,代表不同离散数值的基本波形。 归零与不归零编码的区别就是,归零编码,显然计算机无法判断哪里到哪里是一个码原,那就...
2k words
怎么感觉typora和hexo的markdown渲染有点不一样?有空再改。 [TOC] 计算机网络概述 概念 计算机网络是将一个分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享、信息传递的系统。 简而言之,计算机网络是一些互连的、自洽的计算机系统的集合。 组成 从组成部分上,可以分为硬件、软件、协议。 从工作方式上,可以分为边缘部分和核心部分。 功能组成上,可以分为通信子网和资源子网。 功能、分类 背的东西期末再背,略。 性能指标 常用的性能指标如下: ① 速率(数据率/比特率)。单位是 bit/s,或 b/s,也写作 bps。 如果数据率比较高,也可以在前面加上字母,写成 kbit/s, Mbit/s等。 有 k=103M=106G=109k=10^3\\ M=10^6\\ G=10^9 k=103M=106G=109 所以 4×1010 bit/s4\times 10^{10}\space bit/s4×1010 bit/s 的速率,可以记作 40Gbit/s40Gbit/s40Gbit/s。 [!NOTE] 提到...
674 words
流程大致分为两步:① 远程获取签到码 ② 修改定位签到。 注1:原理基于可神的签到脚本,目前还可以通过脚本获取签到码,但直接用脚本签到疑似会被hack。不确定通过脚本获取签到码之后是否也会被hack,因此记录下最朴素的方法,环境完全模拟真实签到。 注2:部分课程已经采用全新签到系统,全新签到系统方法暂待摸索。 注3:仅供学习,不推荐通过此方法逃避考勤。 [TOC] 环境准备 个人推荐都用版本一。 ① 获取签到码: 版本一(电脑版,推荐这个): 微信电脑版 电脑端抓包软件(例,Proxyman) 版本二(手机版。不推荐,配置麻烦,且不同厂商的手机可能问题不一样): 微信手机版 手机版抓包软件(不需要root的有PCAPdroid等,需要root的有很多,先不举例) ② 修改定位: 版本一(苹果设备,ipad,iphone都可以): 电脑版爱思助手,与苹果设备能连通。 版本二(如果你没有苹果设备) 电脑版,安装安卓虚拟机(什么手游模拟器也可以) 操作流程 下列操作仅以上述的版本一为例,版本二原理都一样,可以自行探索。 获取签到码 ① 电脑端微信登录。搜索厦大...
7.7k words
[TOC] 定点数 定点数是指小数点的位置固定不变。小数点的位置是事先约定的,不需要占用一个二进制位来表示。通常将数据表示成纯小数或纯整数。 定点整数 也就是小数点在最后面,原码表示时,范围是:0≤∣X∣≤2n−10\leq|X|\leq 2^n-10≤∣X∣≤2n−1 定点小数 小数点位于符号位和最高有效位之间。 表示范围是:0≤∣X∣≤1−2−n0\leq |X|\leq 1-2^{-n}0≤∣X∣≤1−2−n 原码、补码、反码、移码 略。 移码等于补码的符号位取反;移码的大小关系与真值的大小关系相同。 浮点数 一个 RRR 进制的数 NNN 可以写成 N=M×REN=M\times R^E N=M×RE 其中 MMM 为尾数,EEE 为指数,RRR 为基数(通常取2、8、16)。 浮点数的规格化 单纯这样写的话,同一个小数,浮点表示方法不是唯一的。为让表示形式唯一,规定,当尾数 MMM 不为0的时候: ① 若尾数用原码表示,规定 12≤∣M∣<1\frac{1}{2}\leq |M|<1 21​≤∣M∣<1 也就是说,尾数的二进制形式为 ...
ACM
1.8k words
网络赛被线性基典题暴打了,狠狠补一下。 一个线性基满足,对于它表示的所有数集合 SSS,集合中任意一个数异或所得到的结果都可以表示为线性基中的元素互相异或的和。或者说,线性基可以找到一组数的子集,使得这些子集的异或和能够表示出所有可能的异或结果。 可以用于以下功能: 快速查询一个数是否可以被一堆数异或出来 快速查询一堆数可以异或出来的最大/最小值 快速查询一堆数可以异或出来的第 kkk 大值 具有一些性质: 原数列里的任何一个数都可以通过线性基里的数异或表示出来 线性基里任意一个子集的异或和都不为 000 一个数列可能有多个线性基,但是线性基里数的数量一定唯一,而且是满足性质一的基础上最少的 模板: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182template<typename T>class ...
711 words
[TOC] 整理一下之前做物联网的记录。 一. 固件烧录 因为没有烧录座,就直接拿USB转ttl模块来做了。 连线是正常的如下: 12345ESP32-01S USB-to-TTLVCC -> 3.3VGND -> GNDRX -> TXTX -> RX 除此之外,因为要进烧录模式,因此还需要 12GPIO0(IO0) -> GNDEN -> 3.3V 二. 命令 配置WIFI网络 12AT+CWMODE=1AT+CWJAP="final","" 连接服务器 连接服务器(这句应该不需要) 1AT+CIPSTART="TCP","113.45.173.169",1883 连接MQTT服务器 1AT+MQTTUSERCFG=0,1,"esp01s_id","esp01s","esp01s",0,0,"/mqtt" 1AT+MQTTCONN=0...
841 words
[TOC] 计算机组成原理笔记(0) 概论 计算机的硬件 冯诺依曼结构 组成:运算器、控制器、存储器、输入设备、输出设备 冯诺依曼结构的特点: ① 程序和数据以二进制形式不加区别地存放在存储器中,这与其他一些特殊的存储架构不同。比如哈佛结构。 哈佛结构中,程序存储和数据存储被分开。这意味着计算机有两套物理内存和两个独立的存储器地址空间,一个用于指令,一个用于数据。这种分离允许数据和指令可以并行访问,提高了处理速度。 在冯诺依曼结构中,指令和数据以同等地位存储在存储器中,形式上没有区别,但计算机应能区分他们。 ② 存储器地址也是二进制形式,内存的每个可能位置都有一个唯一的二进制地址。 ③ 指令流驱动。控制器根据存放在存储器中的指令序列即程序工作 。 三总线结构 在冯·诺依曼架构中,尽管指令和数据的形式相同(都是二进制),但计算机通过使用不同的寄存器和控制逻辑来区分它们。这些机制确保CPU能够正确解释内存中的每一位是指令还是数据,并据此进行相应的操作。这种设计允许灵活的编程和内存使用,但也带来了“冯·诺依曼瓶颈”,因为所有的数据和指令都必须通过同一个系统总线。 然而,...